1. Field of the Invention
The present invention relates to a method and a circuit for controlling a motor. In particular, the present invention relates to a method and circuit for controlling current in a motor to reduce and/or eliminate oscillation of the motor's rotor about a desired rotor position commanded by the motor's stator.
2. Disclosure of Related Art
In a conventional motor control circuit an input signal is provided to a translator that generates one or more current level and current direction signals in response to the input signal. The current level and current direction signals are designed to control the current level and direction of current flow in the phase coils of the motor, thereby controlling the rotational position of the motor's rotor. The current level and current direction signals may be provided to a current control module that generates a plurality of PWM (pulse width modulated) motor control signals responsive to the current level and current direction signals. The motor control signals may then be provided to a plurality of switches used to control the level and direction of current flow within each phase coil of the motor.
During the mid-velocity operating range of the above-described motor, the actual position of the motor's rotor begins to oscillate between leading and lagging the commanded rotor position. One known method and circuit for reducing and/or eliminating such oscillation is disclosed in U.S. Pat. No. 4,081,736, the entire disclosure of which is incorporated herein by reference. In this known method and circuit, the degree to which the actual rotor position differs from the commanded rotor position is measured. The time at which the input signal is provided to the translator is then adjusted to control the timing of the subsequent current level and current direction signals generated by the translator.
The above-described circuit and method for reducing and/or eliminating mid-velocity instability works well for motors operating in a full or even half-stepping mode. However, the disclosed method and circuit does not function well for motors operating in a microstepping mode. In the microstepping mode, adjusting the time at which the input pulse is provided to the translator does not enable individual adjustment and instability control during each microstep.
There is thus a need for a method and a circuit for controlling a motor that will minimize and/or eliminate one or more of the above-mentioned deficiencies.